#!/usr/bin/env python
# -*- coding: utf-8 -*-
'''
autor: Luís Cabaço nº5606
data: 11 de Junho de 2012

k-d Trees
'''

class No:
    #contrutor da class Nos
    def __init__(self, key, valor):

        self.key = key			# Chave do nó
        self.valor = valor		# Valor do nó (conteudo) 

        self.parent = None		#Sem parent inicial
        self.left   = None		#Sem left inicial
        self.right  = None		#Sem right inicial
        pass	#Fim do construtor
		
    #Strings para os Nos
    def __str__(self):

        s = str(self.key) + ' : ' + str(self.valor) + '('

        if self.parent == None:
            s += 'None'  + ', ' 
        else:
            s += str(self.parent.key) + ', ' 

        if self.left == None:
            s += 'None'  + ', ' 
        else:
            s += str(self.left.key) + ', ' 

        if self.right == None:
            s += 'None' + ')' 
        else:
            s += str(self.right.key) + ')' 
        return s
    pass # fim da class "No"

# criação da lista de nos com 10 posições vazias
lista_nos = [None for x in range(10)] 

#Preenchimento da lista dos nos
lista_nos[0] = No(99, "Luis")
lista_nos[1] = No(43, "Joao")
lista_nos[2] = No(12, "Ana")
lista_nos[3] = No(56, "Margarida")
lista_nos[4] = No(31, "Francisco")
lista_nos[5] = No(47, "Miguel")
lista_nos[6] = No(20, "Catarina")
lista_nos[7] = No(72, "Filipe")
lista_nos[8] = No(61, "Luisa")
lista_nos[9] = No(03, "Rui")

#imprime a lista dos nos
for x in range (len(lista_nos)):
    print lista_nos[x]
    pass

